#pragma once

#ifndef QBE_INPUT_INPUT_HPP
#define QBE_INPUT_INPUT_HPP

// #include "./KeyBoardShortcuts.h"
// #include "./keybord.hpp"
// #include "./mouse.hpp"
// #include "./window.hpp"
#include "./handles.hpp"

#include "../ecs/ecs.hpp"

#include "getShortcutKeys.hpp"

namespace qbe::input {

void setup(ecs::Commands commands, ecs::Res<bool> enable);

void reset(ecs::Res<vsg::ref_ptr<HandleBundle>> handles);

class Input : public ecs::Plugin {
 public:
  void build(ecs::App& app) {
    app.add_systems<ecs::stage::PreStartup>(setup);
    app.add_systems<ecs::stage::Last>(reset);
  };
};
}  // namespace qbe::input

#endif